C和C 游戏趣味编程.epub
目 录
版权信息
版 权
内容提要
前 言
资源与支持
第1章 C和C 与开发环境介绍
1.1 什么是C和C
1.2 集成开发环境
1.3 小结
第2章 仿真“自由落体的小球”
2.1 下载安装图形库
2.2 显示一个静止小球
2.3 显示多个小球
2.4 利用变量修改多个小球的位置
2.5 小球下落动画
2.6 利用while实现小球下落动画
2.7 利用if语句实现小球重复下落
2.8 小球落地反弹
2.9 小球加速下落
2.10 小结
第3章 “别碰方块”游戏
3.1 字符
3.2 按空格键控制小球起跳
3.3 方块的绘制与移动
3.4 小球和方块的碰撞判断
3.5 随机方块的速度和高度
3.6 得分的计算与显示
3.7 避免空中起跳
3.8 小结
第4章 “旋转蛇”错觉
4.1 绘制扇形
4.2 RGB颜色模型
4.3 绘制一个扇形单元
4.4 for循环语句
4.5 循环的嵌套
4.6 HSV颜色模型
4.7 按键切换效果
4.8 小结
第5章 “见缝插针”游戏
5.1 绘制圆盘与针
5.2 针的旋转
5.3 利用数组实现多根针的绘制
5.4 批量绘制函数
5.5 针的发射与新增
5.6 游戏失败判断
5.7 得分与显示效果改进
5.8 小结
第6章 “见缝插圆”游戏
6.1 利用数组记录多个随机圆
6.2 每次增加一个随机圆
6.3 新圆不和已有圆相交
6.4 函数的定义与应用
6.5 新圆半径最大化
6.6 函数封装多种绘制效果
6.7 按键互动
6.8 小结
第7章 “贪吃蛇”游戏
7.1 变量作用域与游戏框架
7.2 基于二维数组的游戏地图
7.3 小蛇向右移动
7.4 控制小蛇向4个方向移动
7.5 时间控制的改进
7.6 失败判断与显示
7.7 添加食物
7.8 小结
第8章 “十步万度”游戏
8.1 结构体
8.2 鼠标交互
8.3 被鼠标点击后旋转
8.4 函数的参数传递
8.5 旋转的传播
8.6 操作步数与旋转度数
8.7 小结
第9章 “推箱子”游戏
9.1 字符串与字符数组
9.2 应用字符数组存储关卡数据
9.3 键盘控制游戏角色移动
9.4 元素更新的实现
9.5 游戏胜利判断
9.6 多关卡的实现
9.7 基于文件的关卡数据读取
9.8 枚举类型
9.9 小结
第10章 “十字消除”游戏
10.1 红色方块的表示与绘制
10.2 随机颜色方块的实现
10.3 鼠标点击与十字消除
10.4 方块提示框的绘制
10.5 倒计时与进度条
10.6 得分计算与胜负判断
10.7 多关卡与增加游戏难度
10.8 地址与指针
10.9 指针与数组
10.10 小结
第11章 樱花树
11.1 递归
11.2 分形与递归
11.3 绘制樱花树
11.4 显示绘制过程动画
11.5 小结
第12章 “坚持一百秒”游戏
12.1 背景与火箭图片的显示
12.2 基于结构体的反弹子弹
12.3 面向对象版本的子弹
12.4 每隔2秒增加一颗子弹
12.5 添加火箭类
12.6 碰撞判断与火箭爆炸
12.7 坚持时间与多条生命的显示
12.8 添加音乐音效
12.9 添加智能飞碟类
12.10 小结
第13章 “祖玛”游戏
13.1 链表
13.2 C 标准模板库
13.3 顶点类与轨迹类
13.4 添加小球类
13.5 将小球放置在轨迹线上
13.6 小球自动沿着轨迹运动
13.7 小球的插入与消除
13.8 添加炮台类
13.9 炮台旋转与更改小球颜色
13.10 炮台发射小球
13.11 连续出球与胜负判断
13.12 添加音效和复杂轨道
13.13 小结
第14章 “火柴人的无尽冒险”游戏
14.1 定义Player类
14.2 异步输入与延时改进
14.3 枚举类型状态切换
14.4 添加奔跑动画
14.5 跳跃的实现
14.6 添加地面类与场景类
14.7 火柴人与地面的碰撞检测
14.8 相对运动效果的实现
14.9 无尽关卡与胜负判断
14.10 添加敌人类
14.11 添加音效和更多图片
14.12 小结
附录A 练习题参考答案
附录B 语法知识索引
附录C 调试方法与辅助工具
评论